package negocio.entidades;

import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.Entity;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;

@Entity
public class AtividadeAluno extends Arquivo{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	@Temporal(TemporalType.TIMESTAMP)
	private Date dtCadastro;
	
	@Min(0)
	@Max(100)
	private double nota;
	
	private boolean corrigida;
	// ------------------relacionamentos---------------------//
	@ManyToOne
	private Atividade atividade;
	
	@ManyToOne
	private Matricula aluno;
	
	@OneToMany
	private Set<AtividadeComentario> comentarios = new HashSet<AtividadeComentario>();

	// ------------------- GETs e SETs -----------------------//
	public Date getDtCadastro() {
		return dtCadastro;
	}

	public void setDtCadastro(Date dtCadastro) {
		this.dtCadastro = dtCadastro;
	}

	public double getNota() {
		return nota;
	}

	public void setNota(double nota) {
		this.nota = nota;
	}

	public boolean getCorrigida() {
		return corrigida;
	}

	public void setCorrigida(boolean corrigida) {
		this.corrigida = corrigida;
	}

	public Atividade getAtividade() {
		return atividade;
	}

	public void setAtividade(Atividade atividade) {
		this.atividade = atividade;
	}

	public Matricula getAluno() {
		return aluno;
	}

	public void setAluno(Matricula aluno) {
		this.aluno = aluno;
	}

	public Set<AtividadeComentario> getComentarios() {
		return comentarios;
	}

	public void setComentarios(Set<AtividadeComentario> comentarios) {
		this.comentarios = comentarios;
	}

}
